package libofei.config.error;

import libofei.common.controller.BaseController;
import org.springframework.boot.web.server.ErrorPage;
import org.springframework.boot.web.server.ErrorPageRegistrar;
import org.springframework.boot.web.server.ErrorPageRegistry;
import org.springframework.context.annotation.Configuration;
import org.springframework.http.HttpStatus;

@Configuration
public class ErrorPageConfig extends BaseController implements ErrorPageRegistrar {

    private static final String ERROR_404 = getViewPath("/common/404");//404界面
    private static final String ERROR_500 = getViewPath("/common/500");//404界面

    @Override
    public void registerErrorPages(ErrorPageRegistry registry) {
        /*1、按错误的类型显示错误的网页*/
        /*错误类型为404，找不到网页的，默认显示404.html网页*/
        ErrorPage e404 = new ErrorPage(HttpStatus.NOT_FOUND, ERROR_404);
        /*错误类型为500，表示服务器响应错误，默认显示500.html网页*/
        ErrorPage e500 = new ErrorPage(HttpStatus.INTERNAL_SERVER_ERROR, ERROR_500);
        ErrorPage e400 = new ErrorPage(HttpStatus.BAD_REQUEST, ERROR_500);
        registry.addErrorPages(e400 ,e404, e500);
    }
}
